package com.higgins.eventtracking.client.rpc;

import java.util.Date;
import java.util.List;

import com.google.gwt.user.client.rpc.AsyncCallback;
import com.higgins.eventtracking.client.SecurityAccessDeniedException;
import com.higgins.eventtracking.client.dto.ChartDataDTO;
import com.higgins.eventtracking.client.dto.FinanceStatsDTO;
import com.higgins.eventtracking.client.dto.TransactionDTO;
import com.higgins.eventtracking.client.finance.FixedOutgoingDTO;
import com.higgins.eventtracking.client.finance.OutstandingTransactionDTO;

/**
 * The async counterpart of <code>GreetingService</code>.
 */
public interface FixedOutgoingServiceAsync {
	void retrieveFixedOutgoings(AsyncCallback<List<FixedOutgoingDTO>> callback) throws IllegalArgumentException, SecurityAccessDeniedException;
	void updateFixedOutgoing(FixedOutgoingDTO dto, AsyncCallback<String> callback) throws IllegalArgumentException, SecurityAccessDeniedException;	
	void retrieveOutstandingTransactions(AsyncCallback<List<OutstandingTransactionDTO>> callback) throws IllegalArgumentException, SecurityAccessDeniedException;
	void updateOutstandingTransaction(OutstandingTransactionDTO dto, AsyncCallback<String> callback) throws IllegalArgumentException, SecurityAccessDeniedException;	
	void executeOutstandingTransaction(OutstandingTransactionDTO dto, AsyncCallback<String> callback) throws IllegalArgumentException, SecurityAccessDeniedException;
	void deleteOutstandingTransaction(Long id, AsyncCallback<String> callback) throws IllegalArgumentException, SecurityAccessDeniedException;
	

}
